#include <iostream>
#include <exception>

namespace houy
{
    namespace exception
    {
        class ContactException: public std::exception{
            private:
                std::string _message;
            public:
                ContactException() : _message("A problem") {}  
  
            // 接受 std::string 的构造函数  
            ContactException(std::string str) : _message(std::move(str)) {}  
  
            // 接受 C 风格字符串的构造函数  
            ContactException(const char* str) : _message(str) {}  
  
            virtual const char* what() const noexcept override {  
                return _message.c_str();  
            }  
        };    
    } // namespace exception
    
}